QuickTime 3 Reference

Previous | Chapter Top | Chapter Contents | Next

Packetization Information

QuickTime video compressors are increasingly being used for videoconferencing applications. Image data from a compressor is typically split into network-packet-sized pieces, transmitted through a packet-based protocol (such as UDP or DDP), and reassembled into a frame by the receiver(s). Typically, a lost packet causes an entire frame to be dropped; without all the data for a given frame, the decompressor cannot decode the image. When the loss of one packet forces others to be unusable, the loss rate is effectively multiplied by a large factor.

Some compression methods, however, such as H.261, can divide a compressed image into pieces which can be decoded independently. Some videoconferencing protocols, such as the Internet's Real Time Protocol (RTP, RFC#1889), specify that data compressed using H.261 must be packetized into independently decodable chunks. While RTP demands this packetization information from the compressor, other protocols, such as QuickTime Conferencing's MovieTalk protocol, can optionally use this information to effectively reduce loss rates.

QuickTime 2.5 added four new functions to support packetization: SetCSequencePreferredPacketSize , SGSetPreferredPacketSize , SGGetPreferredPacketSize , and VDSetPreferredPacketSize . In addition, the CodecCompressParams structure includes a new field, preferredPacketSizeInBytes . See "Imaging: Codec Components" for information about supporting packetization in image compressor components.

For application developers, the important function is SGSetPreferredPacketSize , which is described in "Capture Components: Sequence Grabber." The SetCSequencePreferredPacketSize function is described later in this chapter. For information about the VDSetPreferredPacketSize function, see "Capture Components: Video Digitizers."


© 1997 Apple Computer, Inc.

Previous | Chapter Top | Chapter Contents | Next